1. Field
The invention relates to the display of three dimensional (3D) objects in a computer system.
2. Background Information
Computer systems are increasingly used to display 3D objects. As used herein, the term computer system refers to any device comprising a processor and a memory to store instructions and data to be supplied to the processor. Typically, the processor and memory are coupled by way of one or more buses. A collection of instructions e.g. software, may be executed to display a representation of a 3D object on a display device. Example display devices include monitors, flat screens, liquid crystal displays, and other technologies well known in the art. The term xe2x80x9cobjectxe2x80x9d, as used herein, refers to a representation using digital signals of something with three perceivable dimensions. For example, an object might be a digital representation of a car, a creature, a house, and so on. Typically, the digital representation of 3D objects in computer systems is accomplished by way of xe2x80x9cmeshesxe2x80x9d or xe2x80x9cwireframesxe2x80x9d which comprise collections of 3D coordinates (commonly referred to as vertices) and connections between the vertices, commonly referred to as edges. Collectively, the points and edges may define triangles or other polygons, each typically confined to a plane. The regions defined by the polygons are commonly referred to as xe2x80x9cfacesxe2x80x9d.
Objects may be fully or partially xe2x80x9copaquexe2x80x9d, that is, when displayed the object may at least partially occlude the display of information which is meant to appear behind the object on the display. For example, an object representing a car displayed on a background comprising a house and a driveway might partially occlude the display of the house and the driveway so that the car appears parked in front of the house and on top of the driveway.
Opacity of objects is often accomplished by mapping the display of color sets onto the faces. These color sets are typically referred to as xe2x80x9ctexturesxe2x80x9d, xe2x80x9cimage mapsxe2x80x9d, xe2x80x9csurfacesxe2x80x9d, and so on. The mapping of textures to faces may be referred to as xe2x80x9ctexture mappingxe2x80x9d. Texture mapping can result in objects which appear more realistic. For example, using texture mapping an object representing a dinosaur may be displayed with realistic lizard-like skin. However, texture mapping is computationally expensive, with the computational complexity increasing as the number of points and polygons of the object increase. Increased computational complexity may result in reduced performance when display position, view angle, lighting angle, and so on for an object are changed. Performance penalties may be especially pronounced when multiple updates occur within a small period of time. There is therefore a continuing need for a manner of displaying 3D objects with reduced computational complexity.